import FuButton from './components/button/button.vue'
import FuInput from './components/input/input.vue'
import FuRadio from './components/radio/radio.vue'
import FuRadioGroup from './components/radio-group/radio-group.vue'
import FuCheckbox from './components/checkbox/checkbox.vue'
import FuCheckboxGroup from './components/checkbox-group/checkbox-group.vue'
import FuSwitch from './components/switch/switch.vue'
import FuRate from './components/rate/rate.vue'
import FuSlider from './components/slider/slider.vue'
import FuNumberBox from './components/number-box/number-box.vue'
import FuForm from './components/form/form.vue'
import FuFormItem from './components/form-item/form-item.vue'
import FuUpload from './components/upload/upload.vue'
import FuPopup from './components/popup/popup.vue'
import FuPicker from './components/picker/picker.vue'
import FuCalendar from './components/calendar/calendar.vue'
import FuField from './components/field/field.vue'
import FuKeyboard from './components/keyboard/keyboard.vue'
import FuDatetimePicker from './components/datetime-picker/datetime-picker.vue'
import FuSearch from './components/search/search.vue'
import FuTextarea from './components/textarea/textarea.vue'
import FuActionSheet from './components/action-sheet/action-sheet.vue'
import FuAlert from './components/alert/alert.vue'
import FuToast from './components/toast/toast.vue'
import FuSnackBar from './components/snack-bar/snack-bar.vue'
import FuDialog from './components/dialog/dialog.vue'
import FuNoticeBar from './components/notice-bar/notice-bar.vue'
import FuNotify from './components/notify/notify.vue'
import FuCollapse from './components/collapse/collapse.vue'
import FuCollapseItem from './components/collapse-item/collapse-item.vue'
import FuCountDown from './components/count-down/count-down.vue'
import FuNumberScroll from './components/number-scroll/number-scroll.vue'
import FuList from './components/list/list.vue'
import FuListItem from './components/list-item/list-item.vue'
import FuScrollList from './components/scroll-list/scroll-list.vue'
import FuOverlay from './components/overlay/overlay.vue'
import FuGrid from './components/grid/grid.vue'
import FuGridItem from './components/grid-item/grid-item.vue'
import FuWaterfall from './components/waterfall/waterfall.vue'
import FuWaterfallItem from './components/waterfall-item/waterfall-item.vue'
import FuSwiper from './components/swiper/swiper.vue'
import FuTabbar from './components/tabbar/tabbar.vue'
import FuTabbarItem from './components/tabbar-item/tabbar-item.vue'
import FuIcon from './components/icon/icon.vue'
import FuGap from './components/gap/gap.vue'
import FuAvatar from './components/avatar/avatar.vue'
import FuLink from './components/link/link.vue'
import FuTransition from './components/transition/transition.vue'
import FuBadge from './components/badge/badge.vue'
import FuTag from './components/tag/tag.vue'
import FuSteps from './components/steps/steps.vue'
import FuStep from './components/step/step.vue'
import FuTabs from './components/tabs/tabs.vue'
import FuTab from './components/tabs/tab.vue'
import FuSegmented from './components/segmented/segmented.vue'
import FuImage from './components/image/image.vue'
import FuIndexList from './components/index-list/index-list.vue'
import FuIndexListItem from './components/index-list/index-list-item.vue'
import FuLoadMore from './components/load-more/load-more.vue'
import FuCodeInput from './components/code-input/code-input.vue'
import FuPullRefresh from './components/pull-refresh/pull-refresh.vue'
import FuDragPopup from './components/drag-popup/drag-popup.vue'
import FuSku from './components/sku/sku.vue'
import FuCategory from './components/category/category.vue'
import FuSubmitBar from './components/submit-bar/submit-bar.vue'
import FuCommentList from './components/comment-list/comment-list.vue'
import FuCityPicker from './components/city-picker/city-picker.vue'
import FuOrderList from './components/order-list/order-list.vue'

// 组件列表
const components = [
  FuButton,
  FuInput,
  FuRadio,
  FuRadioGroup,
  FuCheckbox,
  FuCheckboxGroup,
  FuSwitch,
  FuRate,
  FuSlider,
  FuNumberBox,
  FuForm,
  FuFormItem,
  FuUpload,
  FuPopup,
  FuPicker,
  FuCalendar,
  FuField,
  FuKeyboard,
  FuDatetimePicker,
  FuSearch,
  FuTextarea,
  FuActionSheet,
  FuAlert,
  FuToast,
  FuSnackBar,
  FuDialog,
  FuNoticeBar,
  FuNotify,
  FuCollapse,
  FuCollapseItem,
  FuCountDown,
  FuNumberScroll,
  FuList,
  FuListItem,
  FuScrollList,
  FuOverlay,
  FuGrid,
  FuGridItem,
  FuWaterfall,
  FuWaterfallItem,
  FuSwiper,
  FuTabbar,
  FuTabbarItem,
  FuIcon,
  FuGap,
  FuAvatar,
  FuLink,
  FuTransition,
  FuBadge,
  FuTag,
  FuSteps,
  FuStep,
  FuTabs,
  FuTab,
  FuSegmented,
  FuImage,
  FuIndexList,
  FuIndexListItem,
  FuLoadMore,
  FuCodeInput,
  FuPullRefresh,
  FuDragPopup,
  FuSku,
  FuCategory,
  FuSubmitBar,
  FuCommentList,
  FuCityPicker,
  FuOrderList
]

// 安装方法
const install = function(Vue) {
  components.forEach(component => {
    Vue.component(component.name, component)
  })
}

export {
  install,
  FuButton,
  FuLoadMore,
  FuCodeInput,
  FuPullRefresh,
  FuDragPopup,
  FuSku,
  FuCategory,
  FuSubmitBar,
  FuCommentList,
  FuCityPicker,
  FuOrderList
}

export default {
  install
} 